﻿using AutoMapper;
using BJoin.Application.IManager;
using BJoin.DapperExtension.DatabaseFactory;
using BJoin.MicroSVC.Sample.Dao.Repositories;
using BJoin.MicroSVC.Sample.DataContract.Dtos;
using BJoin.MicroSVC.Sample.DataContract.Entities;
using BJoin.MicroSVC.Sample.DataContract.ExtObjects;
using DapperExtensions;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Logging;
using System;

namespace BJoin.MicroSVC.Sample.Core.Managers
{
    public partial interface IFileManager : IPocoManager<FileDto, FileEntity, long, FileExtObject>
    {
    }
    public partial class FileManager :PocoManager<FileDto, FileEntity, long, FileExtObject>
    {
        public FileManager(ILogger<FileManager> logger, IConfiguration configuration, IServiceProvider provider, IFileRepository repository, IMapper mapper, IDbFactory<IDatabase, long?> factory) : base(logger, provider, repository, mapper, factory)
        {
            Configuration = configuration;
            Init();
        }
        partial void Init();
        public IConfiguration Configuration { get; }

    }
}
